from pymodbus.client.tcp import ModbusTcpClient

# 配置 Modbus 服务器的 IP 地址和端口
ip_address = '192.168.1.199'  # 替换为您的 Modbus 服务器 IP
port = 502                    # 通常情况下，Modbus TCP 使用端口 502

# 创建 Modbus TCP 客户端
client = ModbusTcpClient(ip_address, port)

# 尝试连接到服务器
if client.connect():
    # 读取保持寄存器（功能码 0x03）
    # 参数：寄存器起始地址，寄存器数量，单位标识符（通常为 1）
    result = client.read_holding_registers(address=0, count=10, unit=1)

    # 检查读取是否成功
    if not result.isError():
        # 输出读取的寄存器值
        print("寄存器值:", result.registers)
    else:
        print("读取寄存器时出错:", result)

    # 关闭客户端连接
    client.close()
else:
    print("无法连接到 Modbus 服务器")
